package su.product.service;

import java.util.List;

import net.kuakao.core.dto.PagerDTO;
import su.product.entity.Product;
import su.product.entity.ProductPrice;

/**
 * 
 * 
 * @author sushimeng
 * 
 */
public interface ProductService {

	/**
	 * 取分类下的所有产品(分页显示)
	 * @param s
	 * @return
	 */
	public List<Product> getProductsByCate(PagerDTO s);

	public Product getProductById(int id);
	
	public void saveProduct(Product o)throws Exception;
	
	public void removeProduct(int id)throws Exception;
	
	/**
	 * 修改产品分类
	 * @param productId
	 * @param oldCateId
	 * @param newCateId
	 * @throws Exception
	 */
	public void updateProductCate(int productId,int oldCateId,int newCateId)throws Exception;
	
	//================产品价格信息管理
	public List<ProductPrice> getPriceByProductId(int productId);
	
	public ProductPrice getProductPriceById(int id);

	public void saveProductPrice(ProductPrice o)throws Exception;

	public void removeProductPrice(int id)throws Exception;
	
	/**
	 * 价格浮动，修改产品价格区间，从某时间后增加金额
	 * @param productId 产品id
	 * @param changeDateStr 生效日期
	 * @param price 价格增幅
	 * @throws Exception
	 */
	public void updateAllPrice(int productId,String changeDateStr,double price)throws Exception;
}